#include "IteratorListe.h"

IteratorListe::IteratorListe() {
	this->courant = NULL;
}

IteratorListe::IteratorListe(Element *element) {
	this->courant = element;
}

IteratorListe::~IteratorListe() {
	delete this->courant;
}

IteratorListe &IteratorListe::operator ++(int bidon) {
	if (this->courant->suivant != NULL) {
		this->courant = this->courant->suivant;
	}
	return *this;
}

IteratorListe &IteratorListe::operator ++() {
	if (this->courant->suivant != NULL) {
		this->courant = this->courant->suivant;
	}
	return *this;
}

bool IteratorListe::operator ==(const IteratorListe &iterator) {
	return (this->courant == iterator.courant);
}

bool IteratorListe::operator !=(const IteratorListe &iterator) {
	return (!(this->operator ==(iterator)));
}

Element * IteratorListe::getElementCourant() const {
	return this->courant;
}

Element * IteratorListe::getElementCourant() {
	return this->courant;
}

void IteratorListe::setElementCourant(Element *element) {
	this->courant = element;
}
